package com.wbcs.system.component.application.report.abstractreport.configbean.statistic;

import java.lang.reflect.Method;
import java.util.List;

import com.wbcs.config.component.application.report.ConditionBean;
import com.wbcs.system.datatype.IDataType;

public class StatisticItemBean implements Cloneable
{
    public final static int STATSTIC_SCOPE_PAGE=1;
    
    public final static int STATSTIC_SCOPE_REPORT=2;
    
    public final static int STATSTIC_SCOPE_ALL=3;
    
    private String property;

    private String value;
    
    private String datasetid;
    
    private int statiscope=StatisticItemBean.STATSTIC_SCOPE_REPORT;

    private IDataType datatypeObj;

    private Method setMethod=null;
    
    private Method pageStatiSetMethod=null;
    
    private List<ConditionBean> lstConditions;

    public String getProperty()
    {
        return property;
    }

    public void setProperty(String property)
    {
        this.property=property;
    }

    public String getValue()
    {
        return value;
    }

    public void setValue(String value)
    {
        this.value=value;
    }

    public String getDatasetid()
    {
        return datasetid;
    }

    public void setDatasetid(String datasetid)
    {
        this.datasetid=datasetid;
    }

    public IDataType getDatatypeObj()
    {
        return datatypeObj;
    }

    public void setDatatypeObj(IDataType datatypeObj)
    {
        this.datatypeObj=datatypeObj;
    }

    public Method getSetMethod()
    {
        return setMethod;
    }

    public void setSetMethod(Method setMethod)
    {
        this.setMethod=setMethod;
    }

    public Method getPageStatiSetMethod()
    {
        return pageStatiSetMethod;
    }

    public void setPageStatiSetMethod(Method pageStatiSetMethod)
    {
        this.pageStatiSetMethod=pageStatiSetMethod;
    }

    public List<ConditionBean> getLstConditions()
    {
        return lstConditions;
    }

    public void setLstConditions(List<ConditionBean> lstConditions)
    {
        this.lstConditions=lstConditions;
    }

    public int getStatiscope()
    {
        return statiscope;
    }

    public void setStatiscope(int statiscope)
    {
        this.statiscope=statiscope;
    }

    @Override
	public Object clone()
    {
        try
        {
            return super.clone();
        }catch(CloneNotSupportedException e)
        {
            e.printStackTrace();
            return this;
        }
    }
}
